package negModel;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;

public class Pista{

	private double longitud;
	private Superficie superficie;
	private Clima clima;
	
	public Pista(Superficie s, double l, Clima c){
		superficie=s;
		longitud=l;
		clima=c;
	}
	
	public Pista(double cs,String ns, double l,double cc, String nc){
		Superficie sp=new Superficie(cs,ns);
		Clima cl=new Clima(cc,nc);
		superficie=sp;
		clima=cl;
		longitud=l;
		
	}
	
	public Pista (Element xmlElement) {
		
		this.longitud=Double.parseDouble(xmlElement.getAttribute("longitud"));
		
		NodeList nodo=xmlElement.getElementsByTagName("superficie");
		this.superficie= new Superficie((Element)nodo.item(0));
		
		nodo=xmlElement.getElementsByTagName("clima");
		this.clima= new Clima((Element)nodo.item(0));
		
	}
	
	public Element toXml(Document doc) {
		Element xmlElement = doc.createElement("pista");
				
		xmlElement.setAttribute("longitud", ""+ this.longitud);
				
		xmlElement.appendChild(this.superficie.toXml(doc));
		xmlElement.appendChild(this.clima.toXml(doc));
		
		
		return xmlElement;
	}	
	
	public double getCoeficiente(){
		return (superficie.getCoeficiente() + clima.getCoeficiente());
	}
	
	public double getLongitud(){
		return(longitud);
	}

	public Superficie getSuperficie(){
		return(superficie);
	}
	
	public Clima getClima(){
		return(clima);
	}
	
	public void setLongitud(double d){
		longitud=d;
	}
	
	public void setSuperficie(Superficie s){
		superficie = s;
	}
	
	public void setClima(Clima c){
		clima=c;
	}

}